RISC-V: Use SBI SRST extension when available
authorAnup Patel <anup.patel@wdc.com>
Wed, 9 Jun 2021 12:13:22 +0000 (17:43 +0530)
committerSalvatore Bonaccorso <carnil@debian.org>
Wed, 9 Feb 2022 08:35:55 +0000 (08:35 +0000)
commit00953effe7a036e8c81d3a0cb609c347149497a3
tree287d6c1c265d2a9b2d658883c461e54a3f9d4d02
parent9595bad8eb174c72df9193b7e0980751fff05952
RISC-V: Use SBI SRST extension when available

Origin: https://git.kernel.org/linus/b579dfe71a6a5c3967ca9ad648673b6ca10ab0d5

The SBI SRST extension provides a standard way to poweroff and
reboot the system irrespective to whether Linux RISC-V S-mode
is running natively (HS-mode) or inside Guest/VM (VS-mode).

The SBI SRST extension is available in the SBI v0.3 specification.
(Refer, https://github.com/riscv/riscv-sbi-doc/releases/tag/v0.3.0-rc1)

This patch extends Linux RISC-V SBI implementation to detect
and use SBI SRST extension.

Signed-off-by: Anup Patel <anup.patel@wdc.com>
Reviewed-by: Atish Patra <atish.patra@wdc.com>
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
Gbp-Pq: Topic features/riscv64
Gbp-Pq: Name RISC-V-Use-SBI-SRST-extension-when-available.patch
arch/riscv/include/asm/sbi.h
arch/riscv/kernel/sbi.c